sort & grep

sort
sort <file> # 줄 단위로 세션의 기본값으로 지정된 언어의 표준 정렬 규칙으로 정렬
sort -n <file> # 파일의 숫자를 문자가 아닌 숫자로 인식 후 숫자값을 기준으로 정렬
sort -M <file> # 세글자로 된 "월" 명칭을 인식하고 정렬
sort 매개변수
-b: 정렬 시, 첫 공백 무시
-c: 정렬 하지 않고, 정렬되어 있는지 검사 수행 후 정렬 되어 있지 않은 경우 보고
-d: 빈칸, 알파벳, 숫자만 감안(그 외는 무시)
-f: 알파벳 대, 소문자 구분하지 않음

-M: 월
-n: 숫자
-r: 정렬되는 순서를 반전 시켜서 출력(내림차순)

-k POS1[,POS2]: POS1으로 지정한 위치를 기반으로 정렬하며, POS2가 지정되어 있다면 그 위치에서 끝낸다.
-t SEP: 키의 위치를 구별하기 위해서 쓰는 separator 지정
sort -t ':' -k 3 -n /etc/passwd
# /etc/passwd의 3번째 필드(UID) 숫자 순으로 정렬
du -sh * | sort -nr
# 현재 디렉토리에서 차지하는 용량이 큰 순으로 정렬(내림차순)
grep
grep [option] pattern [file]

파일에서 pattern에 매치되는 단어가 있는 "줄(line)"을 출력
grep pattern file.txt
grep -v revPattern file.txt # 역검색(패턴이 없는 줄 출력)
grep -n pattern file.txt # 내용이 발견되는 줄 출력
grep -c pattern file.txt # 내용이 발견되는 줄의 총 수를 출력
grep -e pattern1 -e pattern2 file.txt # 패턴이 여러 개인 경우(OR)
# pattern으로 정규 표현식 사용 가능
egrep
POSIX의 확장된 정규 표현식을 패턴 일치로 지정하고 사용할 수 있다.